Embodiments herein generally relate to multiple printers systems, and more particularly to a method, service, and computer program product, that provides feedback to the user regarding printers that may be better than the printer selected by the user.
With the ability to utilize multiple printers through various print servers, management of print jobs through such systems is gaining and importance. For example, with respect to automated systems that balance printing loads within a network multi-printer system, European Patent Number 1,224,529, also assigned International Publication Number WO 01/29648, (the complete disclosure of which is incorporated herein by reference) discloses print load balancing, cluster printing and color, black-and-white page splitting. Such systems automatically route print jobs to the most available printer (without user input or feedback) based on factors such as color, black-and-white printing, printing page per minute rates, the number of pages in a job, size and number of copies in a job.
Similarly, U.S. Pat. No. 6,529,286 (the complete disclosure of which is incorporated herein by reference) discloses a dynamically shared printing interface in a computer network that routes print jobs to printers in a user defined preferred printer list based upon a printer's capability to print a certain job when the print job is requested. In this conventional system, a user sends a print job to the dynamically shared printing interface that calculates the estimated workload to print the job designated as a task allocation property, sends a multi-cast to the printers in the preferred printer list requesting printer capability information designated as a printer power index (PPI), receives the printer power index from the printers in the preferred printer list that calculate their own capability, compares the printer power index with the task allocation property, routes the print job whose printer power index best matches with the task allocation property and notifies the user of the printer to which the job is routed. The printers in the preferred printer list calculate their own printer power indexes based upon the printer engine speed, printer memory size, number, size and complexity of print jobs waiting in the printer queue at the instance the multi-cast is received. In another aspect the dynamically shared printing interface re-routes a print job if the original printer develops an error and cannot print the job, by re-sending a multi-cast to the other printers in the preferred printer list requesting printer printer power indexes, receiving printer power indexes from the printers that re-calculate their printer power index, compare the task allocation property with the resent printer power indexes, re-route the print job whose printer power index best matches the task allocation property and re-notify the user of the printer to which the job is re-routed.
However, such systems provide alternate printers recommendation in a static way by having an administrator set up custom messages to be displayed when defined conditions (also called print policies) are triggered against the submitted print job. However, such systems consume extensive administration overhead because they need to continuously maintain alternate printer configurations. Other solutions replace operating system (OS) native printing components. The embodiments herein can be leveraged in a manner that provides efficient printing functionality in an intelligent way without the need for replacing standard print components.
More specifically, the embodiments herein disclose a method that provides feedback to the user regarding printers that may be better than the printer selected by the user. More specifically, one exemplary method herein starts when a print job is received from a workstation (from a user operating a workstation). The print job includes an identification of an initial printer. The method ranks the abilities of the available printers to process the print job to identify the best printer for the print job.
If the initial printer is not ranked as the best printer, the method presents a question to the workstation (to the user through the workstation) regarding whether to redirect the print job to the best printer (depending upon user rights, the question can require the workstation to redirect the print job to the best printer). Thus, embodiments herein recommend the alternate printers that are considered to be efficient for the user or more appropriate for the end-user. If end-user decides to send the same job to one of the alternate printers, then he/she will resubmit the job to the alternate. If the initial printer is ranked as the best printer, the method simply allows the print job to be processed by the best printer without presenting any questions to the user through the workstation.
The ranking of the available printers is based on each of the printer's characteristics including cost per print, specific printer utilization rate, specific printer capability, printer availability, printer physical proximity to the workstation, and user rights to each printer. When presenting the question, the method can also supply to the workstation information regarding ranking characteristics used to determine which printer is the best printer. Similarly, when presenting the question, the method can provide the workstation with a plurality of alternate printers to choose from, and such alternate printers can be ranked according to the previously established ranking from best to worst.
In addition, the embodiments herein also include systems. For example, one exemplary system embodiment comprises a print server operatively connected to a workstation. Again, the workstation generates the print job and supplies the job to the print server. Many available printers are operatively connected to the print server and the print job includes an identification of one of the available printers as the initial printer. A policy server is also operatively connected to the print server. The policy server ranks abilities of the available printers to process the print job to identify a best printer for the print job.
If the initial printer is not ranked as the best printer, the print server presents a question on the workstation regarding whether to redirect the print job to the best printer. Thus, embodiments herein recommend the alternate printers that are considered to be efficient for the user or more appropriate for the end-user. If end-user decides to send the same job to one of the alternate printers, then he/she will resubmit the job to the alternate. If the initial printer is ranked as the best printer, the print server allows the print job to be processed by the best printer, without presenting any questions to the user through the workstation.
The policy server ranks the available printers based on printer characteristics including cost, printer utilization rate, printer capability, printer availability, printer proximity, and user rights to a printer. When presenting the question, the print server can supply to the workstation information regarding ranking characteristics used to determine which printer is the best printer. Similarly, when presenting the question, the print server can supply, to the workstation, a plurality of alternate printers that are ranked according to the ranking, from best to worst.
These and other features are described in, or are apparent from, the following detailed description.